home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er 1991 December
/
64er_Magazin_91-12_1991_Markt__Technik_de_Side_A.d64
/
main v2.0
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
8KB
|
279 lines
1 poke53280,0:poke53281,0
2 ra = 5
5 nu= 0
6 fa = 1000.82836
10 rem ****************************************
20 rem * main v1.1 (c) by markt und technik *
30 rem * 1991 *
40 rem * written by hgrb *
50 rem * 1991 *
60 rem ****************************************
70 lw=8: rem laufwerksnummer
80 ifa=0thena=1:load"messzyklus",lw,1
81 ifa=1thena=2:load"messzyklus2",lw,1
85 print"[147]moechten sie den a/d-wandler eichen?"
86 print"(j/n)"
87 geta$:ifa$=""then87
88 ifa$="j"then1000
89 ifa$<>"n"then86
90 z%(1)=2:z%(2)=2:z%(3)=2:z%(4)=10:z%(5)=10:z%(6)=10
100 s%(1)=1:s%(2)=15:s%(3)=29:s%(4)=1:s%(5)=15:s%(6)=29
110 l$=" "
120 print"[147] 64'er messlabor "
130 dimma$(6,4)
140 open1,lw,15,"i"
150 open2,lw,2,"konfigmes,s,r"
160 input#2,n :rem anzahl installierter module
170 for m = 1 to n :rem moduldaten einlesen
180 : input#2,g$(m) :rem zu messende groesse
190 : input#2,e$(m) :rem einheit des messwerts
200 : input#2,b(m) :rem bildschirmposition
210 : input#2,a(m) :rem archivierung?
220 : input#2,n$(m) :rem archivierungsdatei
230 next m :rem naechstes modul
231 close2
232 close1
240 rem *************************************
250 rem * start der messroutinen *
260 rem *************************************
270 rem initialisierung
280 gosub60000 : rem hier kann funkuhrroutine eingebaut werden
285 print"[147] 64'er messlabor "
290 for i = 1 to 6
300 : ma$(i,0) = "modul "+str$(i)+" "
310 : ma$(i,1) = "000000[146]"
320 : ma$(i,2) = "unit[146]"
330 : ma$(i,3) = "[158] [146]"
340 : m = i
345 : bs = i
350 : gosub 570: rem maske aufbauen
360 next i
370 print"";
380 fora=1to8
390 : print"[165]"spc(11)"[167]"spc(13)"[167]"spc(12)"[167]";
400 next a
410 print"[207][183][183][183][183][183][183][183][183][183][183][183][208][183][183][183][183][183][183][183][183][183][183][183][183][183][208][183][183][183][183][183][183][183][183][183][183][183][183][208]";
420 fora=1to8
430 : print"[165]"spc(11)"[167]"spc(13)"[167]"spc(12)"[167]";
440 next a
450 print"[183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183]";
455 open1,8,15,"i"
460 form=1ton
470 : bs=m
480 : on m gosub 10000,13000,11000,12000,10000,10000
490 ma$(m,0)=""+g$(m)+left$(l$,10-len(g$(m)))
500 ma$(m,2)=""+e$(m)+left$(l$,4-len(e$(m)))
510 : ma$(m,1)=""+right$(str$(an),7)+left$(l$,6-len(str$(an)))
520 : bs =b(m)
530 : gosub570
535 gosub 61000
536 if a(bs) = -1 then gosub 59000: rem archivierung?
540 next m
550 goto460
560 end
570 rem ************************************
580 rem *bildschirmausgabe anzeigefeld *
590 rem *uebergabewert: nummer der *
600 rem *ausgabeposition in bs *
610 rem ************************************
620 print"";: rem auf homeposition
630 for a = 0 to z%(bs) : rem zeilen-
640 : print"";
650 next a
660 for a = 1 to s%(bs) : rem und spalten-
670 : print""; :rem position
680 next a : rem einstellen
690 print ""ma$(m,0); : rem ausgabe messgroesse
700 print"[157][157][157][157][157][157][157][157][157][157]";ma$(m,1);ma$(m,2); : rem ausgabe wert und einheit
710 print"[157][157][157][157][157][157][157][157][157][157]";ma$(m,3);
720 return
1000 print"[147]eichung des analog/digitalwandlers"
1010 print"schliessen sie den eingang des"
1020 print"a/d-wandlers mit einer drahtbruecke"
1030 print"kurz (entspricht 0 volt).
1040 [153]"druecken sie dann eine taste!"
1050 [161]a$
1060 [139]a$[178]""[167]1050
1070 bs[178]1
1080 [129]a[178]1[164]10
1090 : [141]5000
1100 : n[178]n[170]fz
1110 [130]a
1120 n[178]n[173]10
1130 [153]"eichwert fuer 0volt ist ";n
1140 [153]"bitte tragensie diesen wert im"
1150 [153]"programm ein mit:"
1160 [153]"5 n = <eichwert>"
1170 [153]"verbinden sie nun den eingang"
1180 [153]"des a/d-wandlers mit 5 volt."
1190 [153]"druecken sie dann eine taste."
1200 [161]a$
1210 [139]a$[178]""[167]1200
1220 bs[178]1
1230 [141]5000
1240 [129]a[178]1[164]10
1250 : [141]5000
1260 : fa[178]fa[170]fz
1270 [130]a
1280 fa[178]fa[173]10
1290 [153]"die steigung betraegt ";fa[173]5
1300 [153]"tragen sie diesen wert im"
1310 [153]"programm ein mit:"
1320 [153]"6 fa = <steigung>"
1330 [153]"danach muss das programm unbedingt"
1340 [153]"unter dem namen main v1.2e"
1350 [153]"auf disk gespeichert werden!"
1360 [128]
5000 [143] ************************************
5010 [143] * analogmessroutine *
5020 [143] * uebergabewert: analogmodul- *
5030 [143] * nummer in variable bs *
5040 [143] * eichwerte fuer nullpunkt in *
5050 [143] * n, fuer steigung in fa *
5060 [143] ************************************
5070 [151]56579,[194](56579)[176] 224
5080 [151] 56577,m[172]32 :[143] analogport waehlen
5090 [158] 53100 :[143] timing nur in masch.
5100 fz [178] (255[171][194](56580))[170](255[171][194](56581))[172]256
5110 u [178] (fz [171] nu) [173] fa :[143] eichung
5120 [142]
10000 [143] ************************************
10010 [143] * temperaturmodul *
10020 [143] * uebergabe: analogportnummer in bs*
10030 [143] ************************************
10035 nt[178]2224.400:ns[178]23.5700
10036 [151]56579,[194](56579)[176]224
10037 [151]56577,m[172]32
10040 [129]te[178]1[164]1000
10050 [130]
10060 [141] 5000
10100 an [178][181](((fz[171]nt)[173]ns)[172]10[170].5)[173]10
10109 [139]an[177][178]100[167]an[178]99.99
10110 [142]
11000 [143] ************************************
11010 [143] * druckmodul *
11020 [143] * uebergabe: analogportnummer in bs*
11030 [143] ************************************
11040 nt[178]0000.000:ns[178]2.10970464
11050 [151]56579,[194](56579)[176]224
11060 [151]56577,m[172]32
11070 [129]te[178]1[164]1000
11080 [130]
11090 [141] 5000
11100 an [178] [181]((fz[171]nt)[173]ns)
11110 [139]tl[178]0[167]tl[178]fz
11120 [139]an[177][178]10000[167]an[178]9999
11130 [139]dm[179][177]3[167]11220
11140 tm[178]tm[173]dm
11150 [153]""[166]s%(bs))" cmd cmd "
11160 [153][166]s%(bs))
11170 [139]tm[177]tl[170].3[167][153]"+"
11180 [139]tm[179]tl[171].3[167][153]"-"
11190 [139]tm[179][178]tl[170].3[175]tm[177][178]tl[171].3[167][153]"="
11200 tl[178]tm
11210 tm[178]0
11220 dm[178]dm[170]1
11230 [139]dm[178]90[167]dm[178]0
11240 tm[178]tm[170]fz
11250 [142]
12000 [143] ************************************
12010 [143] * regenmodul *
12020 [143] * uebergabe: analogportnummer in bs*
12030 [143] ************************************
12040 rw[178]0
12050 nt[178]28.000:ns[178]0.946405
12060 [151]56579,[194](56579)[176]224
12070 [151]56577,m[172]32
12080 [139] re[178]1[167]re[178]0:[141]12170
12090 [129]te[178]1[164]1000
12100 [130]
12110 [141] 5000
12120 an [178][181]((fz[171]nt)[173]ns)
12130 [139]an[179]0[167]an[178]0
12140 rm[178]an
12150 [139]an[177][178]10000[167]an[178]9999
12160 [142]
12170 [143] *************************************
12180 [143] * regenmesserreset *
12190 [143] *************************************
12200 [151]56579,16
12210 [151]56577,[194](56577)[175][168]16
12220 [151]56577,[194](56577)[176]16
12230 [151]56579,0
12240 [153]"tagesregenmenge: "rm
12250 [129]ix[178]1[164]2000:[130]
12260 [142]
13000 [143] ************************************
13010 [143] * feuchtemodul *
13020 [143] * uebergabe: analogportnummer in bs*
13030 [143] ************************************
13040 nt[178]17803.166666:ns[178]65.79166666
13050 sw[178][194](56576):[151]56576,[194](56576)[175][168]4
13060 [158]53000
13070 [151]56576,sw
13080 fz [178] (255[171][194](56324))[170](255[171][194](56325))[172]256
13090 an [178][181]((nt[171]fz)[173]ns)
13100 [139]an[177][178]10000[167]an[178]9999
13110 [142]
59000 [143] ************************************
59010 [143] * *
59020 [143] * archivierungsmodul *
59030 [143] * uebergabe: modulnummer in bs *
59040 [143] * filename in n$(bs) *
59050 [143] * messwert in an *
59060 [143] * datum in d$ *
59070 [143] * zeit in t$ *
59080 [143] * *
59090 [143] ************************************
59100 mw(bs) [178] mw(bs) [170] an
59110 ze(bs) [178] ze(bs) [170] 1
59120 [139] ze(bs) [179] ra [167] 59310
59130 ze(bs) [178] 0
59140 [159]2,8,2,n$(bs)[170]",l,"[170][199](16):[143] dateilaenge 16 byte
59150 [153]"datei"n$(bs)
59160 [152]1,"p"[170][199](2)[170][199](0)[170][199](0)[170][199](0):[143] auf 1. byte positionieren
59170 [152]1,"p"[170][199](2)[170][199](0)[170][199](0)[170][199](0):[143] zur sicherheit zweimal
59180 [132]2,lr$:[143] anzahl schon vorhandener records
59190 lr [178] [197](lr$)[170]1
59200 hi [178] [181](lr[173]256)
59210 lo [178] lr[171]256[172]hi
59220 [152]1,"p"[170][199](2)[170][199](lo)[170][199](hi)[170][199](0):[143] neuen record positionieren
59230 [152]1,"p"[170][199](2)[170][199](lo)[170][199](hi)[170][199](0):[143] zur sicherheit zweimal
59240 rc$[178]t$[170][200]([196](mw(bs)[173]ra),4):[143] datensatz zusammensetzen
59250 mw(bs)[178]0
59260 [152]2,rc$:[143] record schreiben
59270 [152]1,"p"[170][199](2)[170][199](0)[170][199](0)[170][199](0)
59280 [152]1,"p"[170][199](2)[170][199](0)[170][199](0)[170][199](0)
59290 [152]2,lr
59300 [160]2:[143] datei schliessen
59310 [142]
60000 [153]"bitte zeit eingeben! (hh,mm)"
60010 [133]h$,m$
60020 h1[178][197]([200](h$,1)):h2[178][197]([201](h$,1))
60030 [139]h1[178]2[167]hh[178]144:[137]60060
60040 [139]h1[178]1[176]h1[178]0[167]hh[178]h1[172]16:[137]60060
60050 [153]"bitte format beachten (hh,mm)":[137]60000
60060 [139]h2[177][178]0[175]h2[179][178]9[167]hh[178]hh[170]h2:[137]60080
60070 [137]60050
60080 m1[178][197]([200](m$,1)):m2[178][197]([201](m$,1))
60090 [139]m1[179]0[176]m1[177]9[176]m2[179]0[176]m2[177]9[167]60050
60100 mm[178]m1[172]16[170]m2
60110 [151]56587,hh
60120 hl[178]h1[172]10[170]h2
60130 [151]56586,mm
60140 [151]56585,0
60150 [151]56584,0:[143] uhr startet
60160 [142]
61000 hh[178][194](56587):[143] uhr stoppt
61010 mm[178][194](56586)
61020 zs[178][194](56584):[143] uhr laeuft weiter
61030 h1[178][181](hh[173]16):[139]h1[178]9[167]h1[178]2
61040 h[178]h1[172]10[170](hh[175]15)
61050 [139]h[178]24[167]h[178]0
61060 [139]hl[179][177]rw [175]h[178]rw[167]re[178]1:[143] resetzeit erreicht
61070 hl[178]h
61080 mi[178][181](mm[173]16)[172]10[170](mm[175]15)
61090 [153]" cmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmdcmd"h":"mi" uhr"
61100 t$[178][196](h)[170][196](mi)
61110 [142]